class ErrorDef {
  int code;
  String get message => _errorCodes[code] ?? "未找到定义的Code";

  ErrorDef(this.code);

  ErrorDef.message(this.code);

  static String getMessage(int code) => ErrorDef(code).message;

  static const Map<int, String> _errorCodes = {
    0: "没有错误",
    1: "未知错误",
    2: "内存不足",
    3: "sdk内部错误",
    4: "不支持的sdk版本",
    5: "参数错误",
    6: "无效数据",
    7: "AppID或AppSecret不正确",
    8: "服务异常",
    9: "登录状态错误",
    10: "帐号在别处被使用",
    11: "sdk未初始化",
    12: "还没有登录",
    13: "base64转换失败",
    14: "启用了第三方鉴权，但没有携带鉴权信息",
    15: "没有启用第三方鉴权，但携带了鉴权信息",
    16: "访问第三方鉴权服务异常",
    17: "第三方鉴权不通过",
    18: "token已过期",
    19: "鉴权信息错误",
    20: "appid不存在",
    21: "鉴权失败",
    22: "非token鉴权方式",
    23: "没有api访问权限",
    24: "账号已过期",
    200: "网络初始化失败",
    201: "没有服务器信息",
    202: "服务器没有响应",
    203: "创建连接失败",
    204: "socket异常",
    205: "网络超时",
    206: "连接被关闭",
    207: "连接丢失",
    208: "语音引擎初始化失败",
    209: "ssl错误",
    210: "响应数据不正确",
    400: "队列ID错误",
    401: "没有用户在排队",
    402: "排队用户已取消",
    403: "队列服务还未开启",
    404: "已在其它队列排队(客户只能在一个队列排队)",
    600: "无效的呼叫ID",
    601: "已在呼叫中",
    602: "对方忙",
    603: "对方不在线",
    604: "对方无应答",
    605: "用户不存在",
    606: "对方拒接",
    800: "房间不存在或已结束",
    801: "房间密码不正确",
    802: "房间终端数量已满（购买的license不够)",
    803: "分配房间资源失败",
    804: "房间已加锁",
    805: "余额不足",
    806: "业务权限未开启",
    807: "不能再次登录",
    808: "没有mic权限",
    809: "mic已被使用",
    810: "mic未知错误",
    811: "没有扬声器权限",
    812: "扬声器已被使用",
    813: "扬声器未知错误",
    814: "图像为空",
    900: "抓屏失败",
    901: "单次录制达到最大时长(8h)",
    902: "磁盘空间不够",
    903: "录像的分辨率超出限制",
    904: "录制参数超出限制",
    905: "录制文件操作出错",
    906: "录制已开启",
    907: "录制服务器任务已满",
    908: "购买的云端录像空间已满",
    1000: "发送失败",
    1001: "有敏感词语",
    1100: "发送信令数据过大",
    1101: "发送数据过大",
    1102: "目标用户不存在",
    1103: "文件错误",
    1104: "无效的发送id",
    1200: "状态错误不可上传/取消上传",
    1201: "录制文件不存在",
    1202: "上传失败，失败原因参考日志",
    1203: "移除本地文件失败",
    1300: "网络摄像头url不正确",
    1301: "网络摄像头已存在",
    1302: "网络摄像头达到最大数量",
    1400: "文件不存在",
    1401: "文件读失败",
    1402: "文件写失败",
    1403: "目标文件已存在",
    1404: "文件操作失败",
    1405: "不支持的文件尺寸",
    1500: "网盘不存在",
    1501: "没有网盘权限",
    1502: "不合法文件名",
    1503: "文件已存在",
    1504: "文件或目录不存在",
    1505: "文件没有转换",
    1506: "文件转换失败",

    // 10000 视图

    // 20000 音频

    // 30000 视频

    // 40000 成员、房间

    // 50000 录制

    // 60000 共享

    // 70000 媒体

    // 80000 邀请/呼叫

    // 90000 队列
  };
}
